cor.esp()

Correlacao espacial entre distancias geograficas e diferencas de uma variavel de interesse


Descricao
Calcula a correlacao entre as distancias eucliadianas de um conjunto de localidades e as diferencas 
de uma dada variavel de interesse de localidade para localidade


Uso
cor.esp(tabela, plot.entr=TRUE, plot.hist=TRUE, metodo="pearson", permut=10000) 


Argumentos
tabela	dataframe com 4 colunas (com titulos de colunas): coluna 1 - identificacao das localidades; colunas 
		2 e 3 - coordenadas geograficas x e y das localidades; coluna 4 - variavel de interesse associada as
		localidades (quantidade de areas nativas, riqueza de especies)
plot.entr	TRUE - retorna 2 graficos representando os dados de entrada
plot.hist	TRUE - retorna o histograma com os valores dos coeficientes de correlacao (pearson ou spearman) e o valor de
		p resultante das permutacoes 
metodo	metodo de correlacao "pearson" ou "spearman"
permut	numero de permutacoes para o calculo do p da correlacao espacial


Detalhes
Os nomes das colunas e nomes das localidades da "tabela" serao usados para identificar titulos, eixos de graficos 
e dimensoes das matrizes de saida de resultados. Assim, nao e conveniente utilizar nomes grandes, para facilitar a 
visualizacao dos resultados.

Para a visualizacao de conjuntos de dados grandes, recomenda-se, para uma primeira visualizacao dos dados, 
selecionar plot.hist=FALSE e permut=100 (ou menor). Com isso a visualizacao dos dados de entrada por meio de 
plot.entr=TRUE sera mais rapida e apresentada maior no dispositivo grafico. Caso se deseje expandir a visualizacao 
dos dados de entrada, basta aumentar o tamanho do dispositivo grafico e rodar novamente a funcao.

Com plot.entr= TRUE e plot.hist=TRUE, o histograma sera apresentado juntamente com os graficos de entrada. Se 
quisermos visualizar somente o histograma ocupando todo o dispositivo grafico, basta selecionar plot.entr=FALSE e 
plot.hist=TRUE.  

O histograma de saida (plot.hist) refere-se sempre ao metodo de correlacao selecionado (pearson ou spearman).


Valores
A tabela (dataframe de entrada) nao deve conter celulas sem informacao (NA) e e preciso verificar se as celulas
com zeros nao representam na verdade NA. Celulas com NA ou falsos zeros podem viesar o resultado da correlacao.

O grafico Localizacao x Variavel de interesse permite visualizar a localizacao geografica das localidades (xy)
e distinguir as localidades quanto aos quartis da variavel de interesse.

O grafico de correlacao espacial permite a visualizacao da correlacao entre as matrizes de distancia apresentadas
no console (matriz de distancia eucliadiana entre as localidades x diferencas da variavel de interesse de localidade
para localidade).

O histograma retorna as frequencias do coeficiente de correlacao (R quando Pearson e rho quando Spearman) decorrentes
das permutacoes da variavel de interesse. A linha vermelha representa o valor obtido (R ou rho) 
e o p representa a probabilidade acumulada at o extremo da distribuicao. Quando o coeficiente (R ou rho) e negativo, 
o p refere-se a probabilidade acumulada entre a linha vermelha e o extremo negativo. Quando o coeficiente e positivo,
p refere-se  a probabilidade acumulada entre a linha vermelha e o extremo positivo. O coeficiente (R ou rho) e o p 
estao expressos no titulo do grafico.


Nota
Quando o metodo escolhido e "spearman", e comum surgirem mensagens de aviso no console. As mensagens de aviso 
referem-se a funcao  cor.test() utilizada para calcular o rho de spearman. No calculo do rho, a funcao avisa que
nao e possivel retornar o p exato. Os avisos nao influenciam no calculo do rho, e o p da funcao cor.esp e obtido 
posteriormente por meio da permutacao dos vetores de distancia e do calculo de rho para cada uma das permutacoes

Um numero grande de permutacoes (maior que 1000) pode fazer com que funcao demore alguns segundos para retornar 
os resultados. O numero padrao e de 10000 permutacoes, mas pode ser reduzido quando se deseja apenas visualizar 
rapidamente os graficos de entrada e matrizes de distancia.


Autor:
Alexandre Toshiro Igari
alexandre.igari@usp.br


Referencias
Eu ainda tenho que estudar um pouco mais quais o metodos que possibilitam calcular a correlacao espacial. O Ale
deu a dica de estudar o metodo de Mantel, que me pareceu muito semelhante ao que eu fiz na funcao, mas preciso
entender o metodo mais detalhadamente.


Veja tambem
cor.test()


Exemplos

# Criando um dataframe com dados para os exemplos:
ex.1 <- data.frame(Localidade=c("A", "B", "C", "D", "E"), x=c(1:5), y=c(2,9,3,12,5), Riqueza=c(101,110,149,121,130))

# Funcao com matrizes de distancia (no console), todos os graficos e correlacao de pearson (no dispositivo grafico)
# Para ver os graficos maiores, aumente a janela do dispositivo grafico e rode a funcao novamente
cor.esp (ex.1, permut=200)

# So com os graficos de entrada (maiores)
cor.esp (ex.1, plot.entr=TRUE, plot.hist=FALSE, metodo="pearson", permut=200)

# So com o histograma de saida (maior) 
cor.esp (ex.1, plot.entr=FALSE, plot.hist=TRUE, metodo="pearson", permut=200)

# Funcao com correlacao de spearman e 10000 permutacoes (leva alguns segundos para rodar)
cor.esp (ex.1, plot.entr=FALSE, plot.hist=TRUE, metodo="spearman")





 

 